package com.hongmeng.operater.service.newsAndVideo;

import java.util.List;

import com.hongmeng.common.core.domain.AjaxResult;
import com.hongmeng.operater.domain.newsAndVideo.HmNews;
import com.hongmeng.operater.domain.newsAndVideo.entity.NewsInfoEntity;

/**
 * 文章信息Service接口
 * 
 * @author hongmeng
 * @date 2020-12-21
 */
public interface IHmNewsService 
{
    /**
     * 查询文章信息
     * 
     * @param id 文章信息ID
     * @return 文章信息
     */
    public HmNews selectHmNewsById(Integer id);

    /**
     * 查询文章信息列表
     * 
     * @param hmNews 文章信息
     * @return 文章信息集合
     */
    public List<NewsInfoEntity> selectHmNewsList(HmNews hmNews);

    /**
     * 新增文章信息
     * 
     * @param hmNews 文章信息
     * @return 结果
     */
    public AjaxResult insertHmNews(HmNews hmNews);

    /**
     * 修改文章信息
     * 
     * @param hmNews 文章信息
     * @return 结果
     */
    public int updateHmNews(HmNews hmNews);

    /**
     * 批量删除文章信息
     * 
     * @param ids 需要删除的文章信息ID
     * @return 结果
     */
    public int deleteHmNewsByIds(Integer[] ids);

    /**
     * 删除文章信息信息
     * 
     * @param id 文章信息ID
     * @return 结果
     */
    public int deleteHmNewsById(Integer id);

    /**
     * 审核文章信息
     *
     * @param id 文章信息ID
     * @param yesOrNo 文章审核是否通过
     * @param newsRemarks 审核备注(通过与不通过的理由)
     * @return 结果
     */
    public AjaxResult examine(Integer id, boolean yesOrNo, String newsRemarks);

    /**
     * 获取文章信息详细信息(新增一个阅读量/浏览量)
     * @param id 文章id
     * @return 结果
     */
    public AjaxResult getNewsInfo(Integer id);

    /**
     * 获取相邻文章信息
     * @param id 文章id
     * @param type up为上一篇，next为下一篇
     * @return
     */
    public AjaxResult getAdjacentNews(Integer id,String type);
}
